1. Technical Field
The present invention is directed to an apparatus and method for dynamic sharing of server network interface resources. More specifically, the present invention is directed to an apparatus and method for spawning slave application servers, distributing interfaces over the spawned slave application servers, and binding spawned slave application servers to interfaces in accordance with the distribution.
2. Description of Related Art
Application servers are software applications in an intranet/Internet environment that hosts a variety of language systems used to program database queries and/or perform general business processing. The application server may reside in the same computer as the Web server, i.e. the HyperText Transport Protocol (HTTP) server, or may be in a separate computer. In large Web sites, multiple processors, or multiple computers, are used for both application servers and Web servers (HTTP servers). An examples of a Web application server is International Business Machines, Inc. (IBM) WebSphere Application Server.
With increased usage of the Internet, many times application servers experience heavy loads from client devices on the Internet. That is, the application servers receive more requests from client devices than the application server can service while providing a predetermined quality of services. As a result, the application server may have to drop certain requests, i.e. reject connections with client devices. Thus, in commercial applications, possible sources of revenue are rejected due to the limitations of the application server.
This problem is often solved by having a main server spawn new sub-servers and then the main server redirects connects to these sub-servers. For example, the Apache Web server is one type of server that supports this spawning and redirection to sub-servers. However, such a solution has significant drawbacks. The predominate drawback to this sort of approach is that the main server that spawned the sub-servers still must accept and process new connection requests and to handle new requests and complete a TCP three-way handshake. In other words, the main server still remains as a bottleneck in the handling of new connection requests.
Thus, it would be beneficial to have an apparatus and method for dynamically sharing server network interface resources such that the main server no long must handle new connection requests.